14. Project Submission and Getting Feedback

Project submission

This project is unlike other projects you have experienced so far in the Nanodegree: although there is no formal code review for this project, your team’s code will be run on Carla (once it has passed simulator testing at Udacity), and you will receive complete ROS bag data and log files in return! You can use this data to view video from the onboard camera or to debug and make changes to your code.

Team member submissions will be reviewed automatically, and we will send feedback to the team lead. As a team lead, when your team is satisfied with the results, you will be able to close your submission. See the Project concept for details about the submission process.

Getting and using rosbag feedback

Once your team submits the project, the project will be run using a simulator to ensure that the vehicle is following waypoints and adheres to the the km/h velocity limit set by the velocity rosparam in waypoint_loader. Once this is verified, we will take the project to the test lot for testing.

After testing is complete, your team lead will receive feedback in the form of logfiles and a ROS bag recording of the vehicle on the test lot. The bag file contains all messages passed on all topics in ROS while the vehicle is driving; this provides your team with a full recording of all available data created at the time of testing (including camera data). Note that the download link to this feedback will expire after 20 days, so please download your data and feedback when you receive your review!

To replay the ROS bag using the workspace, use the following steps:

  1. Navigate to a temporary storage folder, so as not to exceed the 2GB limit in /home/workspace. Download the rosbag using wget and the download link:
  cd /opt
  wget <link_to_your_download>
  1. Unzip the download:
  unzip /opt/path/to/your/download.zip
  1. Open a terminal and start roscore.
  2. Open another terminal and run rosbag play -l /opt/path/to/your.bag
  3. Click the "Go To Desktop" button.
  4. From the XWindows desktop, open terminator, and run rviz. You can change the RViz configuration to Udacity's .config file by navigating to /home/workspace/default.rviz from File > Open Config in RViz.

If you are not using a workspace, use the following steps:

  1. Download the rviz config file here.
  2. Open a terminal and start roscore.
  3. Open another terminal and run rosbag play -l /path/to/your.bag
  4. Open one more terminal and run rviz. You can change the RViz configuration to the Udacity download by navigating to your config file from File > Open Config in RViz. Alternatively, if you'd like to make the Udacity config file your default, you can replace the rviz config file found in ~/.rviz/default.rviz.

You should see something similar to the following in RViz:

While the bag is playing, you can use ROS commands to list or echo topics, grep and pipe messages, or use any other debugging techniques that might be useful. This may be helpful, for example, if you wanted to see the ROS messages sent over the /vehicle/throttle_cmd topic as the vehicle was driving around the lot. If you've used logging in your ROS nodes, remember that all log messages except for debugging messages are published to the /rosout topic by default, so you will be able to view logging messages using the ROS bag as well. If you'd like debugging messages to also show up in the logs, be sure to set the log_level when initializing your ROS nodes:

rospy.init_node('my_node', log_level=rospy.DEBUG)